﻿

namespace Jim.SHR;

/// <summary>获取薪酬项目树结构查询字段信息</summary>

[Sdk("getCmpItemQueryField", "获取薪酬项目树结构查询字段信息")]
public class SHRGetCmpItemQueryFieldRequest : ISdkRequest<SHRGetCmpItemQueryFieldResponse>
{

    ///// <summary>
    ///// 是否显示一级
    ///// </summary>
    ///// <value>The method.</value>
    //[DataMember(Name="isLevel ")]
    //public bool IsLevel { get; set; }

    ///// <summary>
    ///// cmpschemeid 
    ///// </summary>
    ///// <value>The method.</value>
    //[DataMember(Name="cmpschemeid  ")]
    //public bool CmpSchemeId { get; set; }
    ///// <summary>
    ///// cmpschemeid 
    ///// </summary>
    ///// <value>The method.</value>
    //[DataMember(Name="filterParam")]
    public FilterParam filterParam { get; set; }
    //TODO:完善参数

}


public class FilterParam
{

    /// <summary>
    /// 是否显示一级
    /// </summary>
    /// <value>The method.</value>
    public bool IsCostBear { get; set; }

    /// <summary>
    /// 指定的业务组织
    /// </summary>
    /// <value>The method.</value>
    public bool HrOrgId { get; set; }

    /// <summary>
    /// 权限项 Id
    /// </summary>
    /// <value>The method.</value>
    public bool permItemId { get; set; }

    /// <summary>
    /// isAll 为 false 时，取在有数据权限范围下的薪酬项目,否则取全部
    /// </summary>
    /// <value>The method.</value>
    public bool IsAll { get; set; }
    /// <summary>
    /// 是否设置薪酬项目数据权限
    /// </summary>
    /// <value>The method.</value>
    public bool IsSetCmpItemDataPerm { get; set; }
    /// <summary>
    /// 受控于数据权限的情况下,isEditOnly 为 true 时把没有编辑权限的薪酬项目过滤掉
    /// </summary>
    /// <value>The method.</value>
    public bool IsEditOnly { get; set; }
    /// <summary>
    /// 是否只显示领导审批的薪酬项目
    /// </summary>
    /// <value>The method.</value>
    public bool IsLeaderAudit { get; set; }
    /// <summary>
    /// 薪酬项目类型
    /// </summary>
    /// <value>The method.</value>
    public bool CmpType { get; set; }
    /// <summary>
    /// 社保报表使用的薪酬项目
    /// </summary>
    /// <value>The method.</value>
    public bool IsSocQuery { get; set; }

}



public class SHRGetCmpItemQueryFieldResponse : SdkResponse<SHRCmpItemQueryField> { }


public class SHRCmpItemQueryField
{
    /// <summary>
    /// 节点 ID
    /// </summary>
    /// <value>string</value>
    public string Id { get; set; }
    /// <summary>
    /// 名称
    /// </summary>
    /// <value>string</value>
    public string Name { get; set; }
    /// <summary>
    /// 编码
    /// </summary>
    /// <value>string</value>
    public string Number { get; set; }
    /// <summary>
    /// 数据类型
    /// </summary>
    /// <value>string</value>
    public string DataType { get; set; }
    /// <summary>
    /// 携带页面 uipk
    /// </summary>
    /// <value>string</value>
    public string Uipk { get; set; }
    /// <summary>
    /// 弹出框 F7 对应字段
    /// </summary>
    /// <value>string</value>
    public string F7FieldName { get; set; }
    /// <summary>
    /// 是否叶子节点"field"
    /// </summary>
    /// <value>string</value>
    public string IsLeaf { get; set; }
    /// <summary>
    /// 枚举来源
    /// </summary>
    /// <value>string</value>
    public string EnumSource { get; set; }
    /// <summary>
    /// 对应查询配置名称
    /// </summary>
    /// <value>string</value>
    public string QueryConfigName { get; set; }
}
